import axios from "axios"
import querystring from "qs"
import {Toast} from "antd-mobile"


// 开发环境下baseUrl="/api" 生产环境baseUrl="" =============注意看这里==========================
var baseUrl = '/api'
if (process.env.NODE_ENV === "production") {
    baseUrl = "";
}

// 请求拦截
axios.interceptors.request.use(config => {
    //请求逻辑=============注意看这里==========================
    config.url = baseUrl + config.url;

    return config
})
// 响应拦截
axios.interceptors.response.use(res => {
    //响应的逻辑

    // 打印数据 
    console.group("本次请求地址：" + res.config.url)
    console.groupEnd()
    if(res.data.code!==200){
        Toast.show({
            icon:"fail",
            content:res.data.msg
        })
    }

    return res;
})

// 封装get
/**
 * 
 * @param {*} url 请求地址
 * @param {*} params 请求参数
 * @returns 
 */
export const get = (url, params = {}) => {
    return axios({
        url,
        method: "get",
        params
    })
}

// 封装post 
/**
 * 
 * @param {*} url 请求地址
 * @param {*} params 参数
 * @param {*} haveFile 判断是否有文件
 * @returns 
 */
export const post = (url, params = {}, haveFile = false) => {
    let data = null;
    if (haveFile) {
        data = new FormData()
        for (let i in params) {
            data.append(i, params[i])
        }
    } else {
        data = querystring.stringify(params)
    }
    return axios({
        url,
        method: "post",
        data
    })
}